# coding=utf8

# Copyright 2018 JDCLOUD.COM
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# NOTE: This class is auto generated by the jdcloud code generator program.


class Api(object):

    def __init__(self, apiId=None, apiGroupId=None, apiName=None, action=None, path=None, matchType=None, backServiceType=None, description=None, reqParams=None, reqBody=None, resBody=None, reqBodyType=None, resBodyType=None, apiBackendConfig=None, hufuAppTypeId=None, deploymentEnvironment=None, editableReqBodyType=None, editableResBodyType=None, wafStatus=None, reqBodyFormatType=None, resBodyFormatType=None):
        """
        :param apiId: (Optional) apiId
        :param apiGroupId: (Optional) 分组ID
        :param apiName: (Optional) 名称
        :param action: (Optional) 动作
        :param path: (Optional) 请求路径
        :param matchType: (Optional) 匹配模式：1."absolute"(绝对匹配); 2."prefix"（前缀匹配）;
        :param backServiceType: (Optional) 后端类型，为空或null时前端显示未设置
        :param description: (Optional) 描述
        :param reqParams: (Optional) 请求参数列表
        :param reqBody: (Optional) 请求格式
        :param resBody: (Optional) 返回格式
        :param reqBodyType: (Optional) 请求格式类型,1:application/json,2:text/xml,3:其他
        :param resBodyType: (Optional) 返回格式类型,1:application/json,2:text/xml,3:其他
        :param apiBackendConfig: (Optional) api后端配置
        :param hufuAppTypeId: (Optional) 应用类型ID,云鼎业务线专用
        :param deploymentEnvironment: (Optional) 当前分组版本，发布的环境信息
        :param editableReqBodyType: (Optional) 请求格式类型,当reqBodyType等于3时,使用该请求格式类型
        :param editableResBodyType: (Optional) 响应格式类型,当resBodyType等于3时,使用该响应格式类型
        :param wafStatus: (Optional) waf状态，如：observe,deny,off
        :param reqBodyFormatType: (Optional) 请求体格式类型，1代表jsonschema，2代表swagger，默认为1
        :param resBodyFormatType: (Optional) 返回体格式类型，1代表jsonschema，2代表swagger，默认为1
        """

        self.apiId = apiId
        self.apiGroupId = apiGroupId
        self.apiName = apiName
        self.action = action
        self.path = path
        self.matchType = matchType
        self.backServiceType = backServiceType
        self.description = description
        self.reqParams = reqParams
        self.reqBody = reqBody
        self.resBody = resBody
        self.reqBodyType = reqBodyType
        self.resBodyType = resBodyType
        self.apiBackendConfig = apiBackendConfig
        self.hufuAppTypeId = hufuAppTypeId
        self.deploymentEnvironment = deploymentEnvironment
        self.editableReqBodyType = editableReqBodyType
        self.editableResBodyType = editableResBodyType
        self.wafStatus = wafStatus
        self.reqBodyFormatType = reqBodyFormatType
        self.resBodyFormatType = resBodyFormatType
